package com.dayou.mapper;

import com.dayou.bean.InterviewerRecord;
import com.dayou.bean.InterviewerRecordDtl;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface InterviewMapper {

    /**
     * 查询提审会见记录
     */
    List<InterviewerRecord> list(InterviewerRecord record);
    /**
     * 新增提审会见主记录
     */
    int insertInterviewerRecordMain(InterviewerRecord record);

    /**
     * 新增提审会见子记录
     */
    int insertInterviewerRecordDtl(@Param("records") List<InterviewerRecordDtl> records);


    /**
     * 更新提审会见子记录
     */
    int updateInterviewerRecordDtl(InterviewerRecordDtl record);

    /**
     * 更新提审会见主记录房间号
     */
    int updateInterviewerRoomId(InterviewerRecord record);

    /**
     * 更新提审会见子记录房间号
     */
    int updateInterviewerDtlsRoomId(InterviewerRecord record);

    /**
     * 删除提审会见主记录
     */
    int delInterviewerRecordMain(@Param("id") Integer id);

    /**
     * 删除提审会见子记录
     */
    int delInterviewerRecordDtls(@Param("irmId") Integer irmId);

    /**
     * 根据访客id获取未结束的提审/会见数量
     */
    int getUnderInterviewCountByVisitorId(@Param("visitorId") Integer visitorId);
    /**
     * 根据对象番号组获取未结束的提审/会见数量
     */
    int getUnderInterviewCountByPrisonInNos(String[] ids);

    /**
     * 根据子记录id组查询对象信息和访客信息
     */
    List<Map<String, Object>> getInfosBuIrIds(String[] ids);

    /**
     * 查询提审会见主记录
     */
    List<Map<String,Object>> interviewerMainRecordList(InterviewerRecord record);

    /**
     * 查询提审会见详细记录
     */
    List<Map<String, Object>> interviewerDetisRecord(InterviewerRecordDtl recordDtl);


    List<Map<String,Object>> selectBringRecordListByAreaNo(@Param("areaNo") Integer areaNo);
}
